#!/usr/bin/python
# -*- coding: utf-8 -*-

#This file is part of pyLot library.
#
# pyLot is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# pyLot is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with pyLot.  If not, see <http://www.gnu.org/licenses/>.

__author__ = u'Pierre Puiseux, Guillaume Baty'
__copyright__ = u"Copyright 2011-2012 (C) andheo, Université de Pau et des Pays de l'Adour"
__credits__ = [u'Pierre Puiseux', u'Guillaume Baty']
__license__ = "GNU Lesser General Public License"

#from _pylot.cli.interfaces.cliinterface import pyLotOptionParser
import sys

def format_opt_to_varname(string):
  """
  génère un nom de variable compatible python à partir d'une option de 
  ligne de commande
  
  >>> format_opt_to_varname('--install-dir')
  'install_dir'
  """
  if string.startswith('--') :
    string = string[2:]
  return string.replace('-', '_')

def option_error_required(option_requiring, option_required, rcode=1):
  print >> sys.stderr, 'ERROR %s requires %s' % (option_requiring, option_required)
  sys.exit(rcode)

def option_error_not_implemented(option, rcode=1):
  print >> sys.stderr, 'ERROR: %s not yet implemented' % option
  sys.exit(rcode)

#def launch_cli_module(cli_class, args=sys.argv):
#
#  # create a Command Line Interface (CLI)
#  parser = pyLotOptionParser()
#  cli = cli_class(parser=parser)
#
#  groups = cli.createOptionGroups()
#
#  for group in groups :
#    cli.parser.add_option_group(group)
#
#  (options, args) = cli.parser.parse_args()
#
#  return cli.parser, cli, options
